/**
 * 文件：ChildItemElement.java
 * 包名：com.ronri.list.extendlist;   --- 正式发布时需要修正
 * 说明：主从列表
 * 作者：MS During
 * 日期：2017/5/6
 * 历史：
 */
package com.ronri.list.extendlist;

import android.content.Context;
import android.view.View;
import android.view.ViewGroup;

import com.ronri.list.editview.InterfaceItemElement;

import java.util.ArrayList;
import java.util.List;

public class ChildItemElement implements InterfaceItemElement {

    public String ControlName = "defaultView";

    // 句柄
    private Context _context;

    // 分组标题名称
    private String _mGroupTitleName;

    // 分组ID
    private int _mGroupID;

    // 小组对象
    private List<ChildItem> _mGroupChild = new ArrayList<ChildItem>();

    /***
     * 构造函数
     * @param context
     */
    public ChildItemElement(Context context) {
        _context = context;
    }

    /***
     * 构造函数
     * @param context
     * @param szGroupName
     * @param groupChild
     */
    public ChildItemElement(Context context, int nid, String szGroupName, List<ChildItem> groupChild)
    {
        _context = context;
        _mGroupID = nid;
        _mGroupTitleName = szGroupName;
        _mGroupChild = groupChild;
    }

    /***
     * 设置分组标题
     * @param name
     */
    public void setGroupName(String name){
        _mGroupTitleName = name;
    }
    /***
     * 分组ID
     * @param id
     */
    public void setID(int id)
    {
        _mGroupID = id;
    }

    /***
     * 添加内容
     * @param item
     */
    public void add(ChildItem item){
        _mGroupChild.add(item);
    }

    /***
     * 根据对象移除内容
     * @param item
     */
    public void remove(ChildItem item){
        _mGroupChild.remove(item);
    }

    /***
     * 根据索引号移除内容
     * @param index
     */
    public void remove(int index){
        if ((index > -1) && (index < _mGroupChild.size()))
            _mGroupChild.remove(index);
    }

    /***
     * 获取列表长度
     * @return
     */
    public int getSize(){
        return _mGroupChild.size();
    }

    /***
     * 根据索引获取数据
     * @param index
     * @return
     */
    public ChildItem getChild(int index){
        if ((index > -1) && (index < _mGroupChild.size()))
            return _mGroupChild.get(index);
        return null;
    }

    /***
     * 获取分组标题
     * @return
     */
    public String getGroupName(){
        return _mGroupTitleName;
    }

    /***
     * 获取数据源
     * @return
     */
    public List<ChildItem> getGroupChild(){
        return _mGroupChild;
    }

    /***
     * 设置分组数据源
     * @param groupChild
     */
    public void setGroupChild(List<ChildItem> groupChild){
        _mGroupChild = groupChild;
    }

    @Override
    public View CreateView(ViewGroup parent) {
        return null;
    }

    @Override
    public String FormatInfo(String Value) {
        return null;
    }
}
